<?php

namespace App\Models\Orders\Repositories\Interfaces;


use App\Trip\Enums\TripTypes;
use Illuminate\Support\Collection;

interface OrdersInterface
{
    public function tripType(): TripTypes;

    /**
     *渠道id
     * @return int
     *
     */
    public function getChannelId(): int;

    public function getOrderState(): int;

    /**
     * 用户id
     * @return string
     */
    public function getUserId(): string;

    /**
     * 订单编号
     * @return string
     */
    public function getOrderSn(): string;

    /**
     * 订单乘客信息
     * @return Collection
     */
    public function getPassengers(): Collection;

    /**
     * 订单出行信息
     * @return OrderTripInfoInterface
     */
    public function getTripInfo(): OrderTripInfoInterface;

    /**
     * 火车飞机出行时间, 酒店入住时间
     * @return string
     */
    public function getTripDate(): string;

}